package com.ling.pl.autoproject.definition.dict.model;

import com.ling.pl.core.commons.annotation.Dict;
import com.ling.pl.core.commons.annotation.ModelProperty;

import javax.persistence.Column;

/**
 * 代码表
 */
public class DictSet {
    @Column(name = "NAME", length = 150)
    @ModelProperty(comment = "中文名称")
    String name;

    @Column(name = "NAME_I18N", length = 150)
    @ModelProperty(comment = "代码")
    String nameI18n;

    @Column(name = "MODULE_ID", length = 36)
    @ModelProperty(comment = "模块id")
    String moduleId;

    @Column(name = "ENTITY_ID", length = 36)
    @ModelProperty(comment = "模块id")
    String entityId;

    //todo
    @Column(name = "PRESET_TYPE", length = 150)
    @ModelProperty(comment = "预置类型", des = "系统操作者......")
    String presetType;

    @Column(name = "DICT_TYPE", length = 150)
    @ModelProperty(comment = "代码表类型")
    @Dict(code = "builder.dict.dictType", des = "静态,动态")
    String dictType;

    @Column(name = "IS_NULL_LABEL_EMPTY", length = 150)
    @ModelProperty(comment = "无值显示空白")
    String isNullLabelEmpty;

    @Column(name = "NULL_LABEL", length = 150)
    @ModelProperty(comment = "无值显示内容")
    String nullLabel;

    @Column(name = "NULL_LABEL_I18N", length = 150)
    @ModelProperty(comment = "无值文本I18n")
    String nullLabelI18n;

    @Column(name = "ITEMS_TYPE", length = 150)
    @ModelProperty(comment = "多项或模式")
    @Dict(code = "builder.dict.itemsType", des = "数值或处理,文本或处理")
    String itemsType;

    @Column(name = "LABEL_ITEMS", length = 150)
    @ModelProperty(comment = "文本字符串")
    String labelItems;

    @Column(name = "VALUE_ITEMS", length = 150)
    @ModelProperty(comment = "文本字符串")
    String valueItems;

    @Column(name = "SPLIT_SEPARATOR", length = 10)
    @ModelProperty(comment = "分隔符")
    String splitSeparator;

    //动态代码表
    @Column(name = "DATASET_ID", length = 36)
    @ModelProperty(comment = "实体数据集")
    String dataSetId;

    @Column(name = "LABEL_PROPERTY", length = 150)
    @ModelProperty(comment = "文本属性")
    String labelProperty;

    @Column(name = "VALUE_PROPERTY", length = 150)
    @ModelProperty(comment = "值属性")
    String valueProperty;

    @Column(name = "SORT_PROPERTY", length = 150)
    @ModelProperty(comment = "排序属性")
    String sortProperty;

    @Column(name = "SORT_DIRECTION", length = 50)
    @ModelProperty(comment = "排序方向")
    @Dict(code = "builder.entity.sortDirection", des = "升序,降序")
    String sortDirection;

    @Column(name = "ICON_PROPERTY", length = 150)
    @ModelProperty(comment = "图标路径属性")
    String iconProperty;

    @Column(name = "STYLE_PROPERTY", length = 150)
    @ModelProperty(comment = "图标样式属性")
    String styleProperty;

    @Column(name = "ICON_REMOVE_PROPERTY", length = 150)
    @ModelProperty(comment = "图标路径X属性")
    String iconRemoveProperty;

    @Column(name = "STYLE_REMOVE_PROPERTY", length = 150)
    @ModelProperty(comment = "图标样式X属性")
    String styleRemoveProperty;

    @Column(name = "PARENT_PROPERTY", length = 150)
    @ModelProperty(comment = "父值属性")
    String parentProperty;

    @Column(name = "ADDITION_FILTER_PARAMS", length = 150)
    @ModelProperty(comment = "附加查询条件")
    String additionFilterParams;
}
